It is not uncommon for a business organization to have a multitude of computer systems and platforms for carrying out business processes (e.g., order processing, product delivery scheduling). As shown in FIG. 1, a single business process 100 may be carried out by various applications 110-140, which may involve many types of computer systems, software applications or computing platforms. For example, a network terminal 110 may serve as a first application for confirming receipt of an order. In the next step in the business process, a server may use a software package 120 to query a datastore to determine if the order can be fulfilled. In a third step, a web page 130 may serve as a third type of application for entering and tracking order specifics. Similarly, several other types of applications 140 may be required to complete the business process. Since all of the disparate applications 110-140 are expected to perform in an efficient and error-free manner, it is important to be able to gather comparable performance data for each application and report the data in a consistent manner.
Typically, data concerning the performance of each enterprise system within a business process can be directly collected from each system, or indirectly via a linked system or agent designed for reporting the data. However, each system within a business process may have a unique format for reporting the related data. Further, systems with differing platforms or architectures may provide data in formats that are not consistent with one another, requiring a translation or formatting before each set of data can be compared or presented with a set of data from a dissimilar system. In addition, there may be a discrepancy between fields of data reported for each system, such that like parameters cannot be directly compared. The data reported by each system also may be raw data, not properly translated into a usable metric, such as a percentage downtime, as opposed to a raw hourly measurement. These data reporting inconsistencies make it very difficult to compare performance between various systems.
Allocating resources between enterprise systems is an important component of running a business. Proper resource allocation includes a calculated distribution of resources to each system, including personnel, bandwidth, workload allocation, supplies and maintenance resources. It is typical that some systems will perform better than others. The tendency is to assign a higher workload to these better-performing systems. However, this imbalance in assigned workload can result in higher downtime for a burdened system, while other capable systems run well below capacity. If a system running at or near maximum capacity goes down for repair, it may take valuable time to transfer the workload to systems with extra capacity. It is therefore beneficial to maintain a balanced workload between systems, which requires accurate and consistent data reporting in order to monitor related performance data. Proper assessment of each system's performance and utilization contributes to more efficient and smoother operations, with better workload distribution and lower system downtimes.
Currently, several levels of system performance reporting may exist on various systems, ranging from no monitoring or reporting of data at all to piecemeal data reporting, with snippets of data reported for each system. As mentioned previously, different data monitoring and reporting methods may also be employed for each system, often with users manually reporting their observations of how a system is performing. Word-of-mouth from users and operators is often not impartial and accurate enough to assess the relative status of a particular system. Partialities and other subjective factors—instead of hard data—may influence which systems receive more maintenance, higher workload allocation, and extra resources. Not only can comparable data be used to adequately assess system performance, but this data may prove useful as feedback for ongoing and future system designs by funneling data collected to requirements analysis and systems architecture personnel.
System performance data generally exists within a system, and only needs to be collected and reported in a usable fashion. It is desirable to be able to package and report data in a uniform format from all systems involved in the business process without having to design and manufacture a unique data collection and reporting system for each unique system. Further, it is desirable to have the capability to monitor all systems real-time or near-real time, as well as continuously. Accordingly, an objective automated method of reporting and comparing the performances of all related systems within a business process is desirable.